package com.qingyun.student.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import com.qingyun.student.entity.StudentSubject;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 学生科目关联表 Mapper 接口
 * </p>
 *
 * @author your_name
 * @since 2025-01-01
 */
@Mapper
public interface StudentSubjectMapper extends BaseMapper<StudentSubject> {

    /**
     * 根据学生ID查询科目列表
     * @param studentId 学生ID
     * @return 科目列表
     */
    List<String> getSubjectsByStudentId(@Param("studentId") Long studentId);

    /**
     * 根据学生ID删除所有科目关联
     * @param studentId 学生ID
     * @return 删除数量
     */
    int deleteByStudentId(@Param("studentId") Long studentId);

    /**
     * 批量插入学生科目关联
     * @param studentId 学生ID
     * @param subjects 科目列表
     * @return 插入数量
     */
    int batchInsert(@Param("studentId") Long studentId, @Param("subjects") List<String> subjects);
}
